/**
 *Copyright (c) 2024 watereyes
 * safetymanagement is licensed under Mulan PubL v2.
 * You can use this software according to the terms and conditions of the Mulan
 * PubL v2.
 * You may obtain a copy of Mulan PubL v2 at:
 *          http://license.coscl.org.cn/MulanPubL-2.0
 * THIS SOFTWARE IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
 * EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
 * MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
 * See the Mulan PubL v2 for more details.
 */
package com.koron.purpose.bean;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.koron.common.domain.BaseEntity;
import org.springframework.format.annotation.DateTimeFormat;

import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.HashMap;
import java.util.Map;

public class SafetyActivityLedgerBean extends BaseEntity {
    // 水司code
    private String wcorpCode;
    // 水司名称
    private String wcorpName;
    // 活动名称
    private String activityName;
    // 活动类型code
    private String activityType;
    // 活动类型
    private String activityTypeName;
    // 活动负责人code
    private String activityPrincipal;
    // 活动负责人
    private String activityPrincipalName;
    // 公司code
    private String corpCode;
    // 公司名称
    private String corpName;
    // 部门code
    private String departmentCode;
    // 部门名称
    private String departmentName;
    // 开始时间
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(
            pattern = "yyyy-MM-dd HH:mm:ss",
            timezone = "GMT+8"
    )
    private Date startTime;
    // 结束时间
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(
            pattern = "yyyy-MM-dd HH:mm:ss",
            timezone = "GMT+8"
    )
    private Date stopTime;
    // 活动目的
    private String activityObjective;
    // 活动记录
    private String activityRecord;
    // 活动总结
    private String activitySummary;
    // 备注
    private String remark;
    // 活动附件
    private String activityAccessory;

    public String getWcorpCode() {
        return wcorpCode;
    }

    public void setWcorpCode(String wcorpCode) {
        this.wcorpCode = wcorpCode;
    }

    public String getWcorpName() {
        return wcorpName;
    }

    public void setWcorpName(String wcorpName) {
        this.wcorpName = wcorpName;
    }

    public String getActivityName() {
        return activityName;
    }

    public void setActivityName(String activityName) {
        this.activityName = activityName;
    }

    public String getActivityType() {
        return activityType;
    }

    public void setActivityType(String activityType) {
        this.activityType = activityType;
    }

    public String getActivityPrincipal() {
        return activityPrincipal;
    }

    public void setActivityPrincipal(String activityPrincipal) {
        this.activityPrincipal = activityPrincipal;
    }

    public String getActivityPrincipalName() {
        return activityPrincipalName;
    }

    public void setActivityPrincipalName(String activityPrincipalName) {
        this.activityPrincipalName = activityPrincipalName;
    }

    public String getActivityTypeName() {
        return activityTypeName;
    }

    public void setActivityTypeName(String activityTypeName) {
        this.activityTypeName = activityTypeName;
    }

    public String getCorpCode() {
        return corpCode;
    }

    public void setCorpCode(String corpCode) {
        this.corpCode = corpCode;
    }

    public String getCorpName() {
        return corpName;
    }

    public void setCorpName(String corpName) {
        this.corpName = corpName;
    }

    public String getDepartmentCode() {
        return departmentCode;
    }

    public void setDepartmentCode(String departmentCode) {
        this.departmentCode = departmentCode;
    }

    public String getDepartmentName() {
        return departmentName;
    }

    public void setDepartmentName(String departmentName) {
        this.departmentName = departmentName;
    }

    public Date getStartTime() {
        return startTime;
    }

    public void setStartTime(Date startTime) {
        this.startTime = startTime;
    }

    public Date getStopTime() {
        return stopTime;
    }

    public void setStopTime(Date stopTime) {
        this.stopTime = stopTime;
    }

    public String getActivityObjective() {
        return activityObjective;
    }

    public void setActivityObjective(String activityObjective) {
        this.activityObjective = activityObjective;
    }

    public String getActivityRecord() {
        return activityRecord;
    }

    public void setActivityRecord(String activityRecord) {
        this.activityRecord = activityRecord;
    }

    public String getActivitySummary() {
        return activitySummary;
    }

    public void setActivitySummary(String activitySummary) {
        this.activitySummary = activitySummary;
    }

    public String getRemark() {
        return remark;
    }

    public void setRemark(String remark) {
        this.remark = remark;
    }

    public String getActivityAccessory() {
        return activityAccessory;
    }

    public void setActivityAccessory(String activityAccessory) {
        this.activityAccessory = activityAccessory;
    }

    public Map toMap() {
        Map map = new HashMap();
        SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        map.put("id", getId());
        map.put("addUser", getAddUser());
        map.put("updateUser", getUpdateUser());
        map.put("addUserName", getAddUserName());
        map.put("updateUserName", getUpdateUserName());
        map.put("addTime", format.format(getAddTime()));
        map.put("updateTime", format.format(getUpdateTime()));
        map.put("activityName", this.activityName);
        map.put("activityType", this.activityType);
        map.put("activityTypeName", this.activityTypeName);
        map.put("activityPrincipal", this.activityPrincipal);
        map.put("activityPrincipalName", this.activityPrincipalName);
        map.put("corpCode", this.corpCode);
        map.put("corpName", this.corpName);
        map.put("departmentCode", this.departmentCode);
        map.put("departmentName", this.departmentName);
        map.put("startTime", format.format(this.startTime));
        map.put("stopTime", format.format(this.stopTime));
        map.put("activityObjective", this.activityObjective);
        map.put("activityRecord", this.activityRecord);
        map.put("activitySummary", this.activitySummary);
        map.put("remark", this.remark);
        map.put("activityAccessory", this.activityAccessory);
        return map;
    }
}
